
// #ifndef VUE3
import Vue from 'vue'
import App from './App'

// 按需导入网络请求的包：
import { $http } from '@escook/request-miniprogram'

// 1. 导入 store 的实例对象
import store from '@/store/store.js'

uni.$http = $http

//设置请求的根路径：
$http.baseUrl = "https://www.uinav.com"

//封装弹窗的方法：
uni.$showMsg = function(title='数据请求失败！',duration=1500){
  uni.showToast({
    title,
    duration,
    icon: 'none',
  })
}

//请求拦截器
$http.beforeRequest = function (options) {
  uni.showLoading({
    title: '数据加载中...',
  })
  
  //判断是否是有权限的接口
  if(options.url.indexOf('/my/') !== -1){
    //有权限的接口发送请求时，为其添加请求头信息：token值
    options.header = {
      // 字段的值可以直接从 vuex 中进行获取
      Authorization: store.state.m_user.token,
    }
  }
}

//响应拦截器：
$http.afterRequest = function () {
  uni.hideLoading()
}

Vue.config.productionTip = false

App.mpType = 'app'

const app = new Vue({
    ...App,
    // 2. 将 store 挂载到 Vue 实例上
    store,
})
app.$mount()
// #endif

// #ifdef VUE3
import { createSSRApp } from 'vue'
import App from './App.vue'
export function createApp() {
  const app = createSSRApp(App)
  return {
    app
  }
}
// #endif